'Weak Dependency Graph [60.0]'
------------------------------
Answer: YES(?,O(n^1))
Input Problem: innermost runtime-complexity with respect to
Rules:
{ rev(nil()) -> nil()
, rev(rev(x)) -> x
, rev(++(x, y)) -> ++(rev(y), rev(x))
, ++(nil(), y) -> y
, ++(x, nil()) -> x
, ++(.(x, y), z) -> .(x, ++(y, z))
, ++(x, ++(y, z)) -> ++(++(x, y), z)
, make(x) -> .(x, nil())}
Details:
We have computed the following set of weak (innermost) dependency pairs:
{ rev^#(nil()) -> c_0()
, rev^#(rev(x)) -> c_1()
, rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, ++^#(nil(), y) -> c_3()
, ++^#(x, nil()) -> c_4()
, ++^#(.(x, y), z) -> c_5(++^#(y, z))
, ++^#(x, ++(y, z)) -> c_6(++^#(++(x, y), z))
, make^#(x) -> c_7()}
The usable rules are:
{ rev(nil()) -> nil()
, rev(rev(x)) -> x
, rev(++(x, y)) -> ++(rev(y), rev(x))
, ++(nil(), y) -> y
, ++(x, nil()) -> x
, ++(.(x, y), z) -> .(x, ++(y, z))
, ++(x, ++(y, z)) -> ++(++(x, y), z)}
The estimated dependency graph contains the following edges:
{rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))}
==> {++^#(x, ++(y, z)) -> c_6(++^#(++(x, y), z))}
{rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))}
==> {++^#(.(x, y), z) -> c_5(++^#(y, z))}
{rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))}
==> {++^#(x, nil()) -> c_4()}
{rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))}
==> {++^#(nil(), y) -> c_3()}
{++^#(.(x, y), z) -> c_5(++^#(y, z))}
==> {++^#(x, ++(y, z)) -> c_6(++^#(++(x, y), z))}
{++^#(.(x, y), z) -> c_5(++^#(y, z))}
==> {++^#(.(x, y), z) -> c_5(++^#(y, z))}
{++^#(.(x, y), z) -> c_5(++^#(y, z))}
==> {++^#(x, nil()) -> c_4()}
{++^#(.(x, y), z) -> c_5(++^#(y, z))}
==> {++^#(nil(), y) -> c_3()}
{++^#(x, ++(y, z)) -> c_6(++^#(++(x, y), z))}
==> {++^#(x, ++(y, z)) -> c_6(++^#(++(x, y), z))}
{++^#(x, ++(y, z)) -> c_6(++^#(++(x, y), z))}
==> {++^#(.(x, y), z) -> c_5(++^#(y, z))}
{++^#(x, ++(y, z)) -> c_6(++^#(++(x, y), z))}
==> {++^#(x, nil()) -> c_4()}
{++^#(x, ++(y, z)) -> c_6(++^#(++(x, y), z))}
==> {++^#(nil(), y) -> c_3()}
We consider the following path(s):
1) { rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, ++^#(x, ++(y, z)) -> c_6(++^#(++(x, y), z))
, ++^#(.(x, y), z) -> c_5(++^#(y, z))}
The usable rules for this path are the following:
{ rev(nil()) -> nil()
, rev(rev(x)) -> x
, rev(++(x, y)) -> ++(rev(y), rev(x))
, ++(nil(), y) -> y
, ++(x, nil()) -> x
, ++(.(x, y), z) -> .(x, ++(y, z))
, ++(x, ++(y, z)) -> ++(++(x, y), z)}
We have applied the subprocessor on the union of usable rules and weak (innermost) dependency pairs.
'Weight Gap Principle'
----------------------
Answer: YES(?,O(n^1))
Input Problem: innermost runtime-complexity with respect to
Rules:
{ rev(nil()) -> nil()
, rev(rev(x)) -> x
, rev(++(x, y)) -> ++(rev(y), rev(x))
, ++(nil(), y) -> y
, ++(x, nil()) -> x
, ++(.(x, y), z) -> .(x, ++(y, z))
, ++(x, ++(y, z)) -> ++(++(x, y), z)
, rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, ++^#(x, ++(y, z)) -> c_6(++^#(++(x, y), z))
, ++^#(.(x, y), z) -> c_5(++^#(y, z))}
Details:
We apply the weight gap principle, strictly orienting the rules
{ rev(nil()) -> nil()
, rev(rev(x)) -> x}
and weakly orienting the rules
{}
using the following strongly linear interpretation:
Processor 'Matrix Interpretation' oriented the following rules strictly:
{ rev(nil()) -> nil()
, rev(rev(x)) -> x}
Details:
Interpretation Functions:
rev(x1) = [1] x1 + [1]
nil() = [0]
++(x1, x2) = [1] x1 + [1] x2 + [0]
.(x1, x2) = [1] x1 + [1] x2 + [0]
make(x1) = [0] x1 + [0]
rev^#(x1) = [1] x1 + [1]
c_0() = [0]
c_1() = [0]
c_2(x1) = [1] x1 + [1]
++^#(x1, x2) = [1] x1 + [1] x2 + [0]
c_3() = [0]
c_4() = [0]
c_5(x1) = [1] x1 + [1]
c_6(x1) = [1] x1 + [1]
make^#(x1) = [0] x1 + [0]
c_7() = [0]
Finally we apply the subprocessor
We apply the weight gap principle, strictly orienting the rules
{rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))}
and weakly orienting the rules
{ rev(nil()) -> nil()
, rev(rev(x)) -> x}
using the following strongly linear interpretation:
Processor 'Matrix Interpretation' oriented the following rules strictly:
{rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))}
Details:
Interpretation Functions:
rev(x1) = [1] x1 + [1]
nil() = [0]
++(x1, x2) = [1] x1 + [1] x2 + [0]
.(x1, x2) = [1] x1 + [1] x2 + [0]
make(x1) = [0] x1 + [0]
rev^#(x1) = [1] x1 + [9]
c_0() = [0]
c_1() = [0]
c_2(x1) = [1] x1 + [4]
++^#(x1, x2) = [1] x1 + [1] x2 + [2]
c_3() = [0]
c_4() = [0]
c_5(x1) = [1] x1 + [3]
c_6(x1) = [1] x1 + [0]
make^#(x1) = [0] x1 + [0]
c_7() = [0]
Finally we apply the subprocessor
We apply the weight gap principle, strictly orienting the rules
{++^#(.(x, y), z) -> c_5(++^#(y, z))}
and weakly orienting the rules
{ rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, rev(nil()) -> nil()
, rev(rev(x)) -> x}
using the following strongly linear interpretation:
Processor 'Matrix Interpretation' oriented the following rules strictly:
{++^#(.(x, y), z) -> c_5(++^#(y, z))}
Details:
Interpretation Functions:
rev(x1) = [1] x1 + [1]
nil() = [0]
++(x1, x2) = [1] x1 + [1] x2 + [0]
.(x1, x2) = [1] x1 + [1] x2 + [8]
make(x1) = [0] x1 + [0]
rev^#(x1) = [1] x1 + [9]
c_0() = [0]
c_1() = [0]
c_2(x1) = [1] x1 + [1]
++^#(x1, x2) = [1] x1 + [1] x2 + [0]
c_3() = [0]
c_4() = [0]
c_5(x1) = [1] x1 + [0]
c_6(x1) = [1] x1 + [2]
make^#(x1) = [0] x1 + [0]
c_7() = [0]
Finally we apply the subprocessor
We apply the weight gap principle, strictly orienting the rules
{ ++(nil(), y) -> y
, ++(x, nil()) -> x}
and weakly orienting the rules
{ ++^#(.(x, y), z) -> c_5(++^#(y, z))
, rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, rev(nil()) -> nil()
, rev(rev(x)) -> x}
using the following strongly linear interpretation:
Processor 'Matrix Interpretation' oriented the following rules strictly:
{ ++(nil(), y) -> y
, ++(x, nil()) -> x}
Details:
Interpretation Functions:
rev(x1) = [1] x1 + [1]
nil() = [7]
++(x1, x2) = [1] x1 + [1] x2 + [8]
.(x1, x2) = [1] x1 + [1] x2 + [12]
make(x1) = [0] x1 + [0]
rev^#(x1) = [1] x1 + [9]
c_0() = [0]
c_1() = [0]
c_2(x1) = [1] x1 + [1]
++^#(x1, x2) = [1] x1 + [1] x2 + [8]
c_3() = [0]
c_4() = [0]
c_5(x1) = [1] x1 + [1]
c_6(x1) = [1] x1 + [0]
make^#(x1) = [0] x1 + [0]
c_7() = [0]
Finally we apply the subprocessor
'fastest of 'combine', 'Bounds with default enrichment', 'Bounds with default enrichment''
------------------------------------------------------------------------------------------
Answer: YES(?,O(n^1))
Input Problem: innermost relative runtime-complexity with respect to
Strict Rules:
{ rev(++(x, y)) -> ++(rev(y), rev(x))
, ++(.(x, y), z) -> .(x, ++(y, z))
, ++(x, ++(y, z)) -> ++(++(x, y), z)
, ++^#(x, ++(y, z)) -> c_6(++^#(++(x, y), z))}
Weak Rules:
{ ++(nil(), y) -> y
, ++(x, nil()) -> x
, ++^#(.(x, y), z) -> c_5(++^#(y, z))
, rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, rev(nil()) -> nil()
, rev(rev(x)) -> x}
Details:
The problem was solved by processor 'Bounds with default enrichment':
'Bounds with default enrichment'
--------------------------------
Answer: YES(?,O(n^1))
Input Problem: innermost relative runtime-complexity with respect to
Strict Rules:
{ rev(++(x, y)) -> ++(rev(y), rev(x))
, ++(.(x, y), z) -> .(x, ++(y, z))
, ++(x, ++(y, z)) -> ++(++(x, y), z)
, ++^#(x, ++(y, z)) -> c_6(++^#(++(x, y), z))}
Weak Rules:
{ ++(nil(), y) -> y
, ++(x, nil()) -> x
, ++^#(.(x, y), z) -> c_5(++^#(y, z))
, rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, rev(nil()) -> nil()
, rev(rev(x)) -> x}
Details:
The problem is Match-bounded by 0.
The enriched problem is compatible with the following automaton:
{ nil_0() -> 2
, ._0(2, 2) -> 4
, ._0(2, 4) -> 4
, ._0(4, 2) -> 4
, ._0(4, 4) -> 4
, rev^#_0(2) -> 6
, rev^#_0(4) -> 6
, ++^#_0(2, 2) -> 10
, ++^#_0(2, 4) -> 10
, ++^#_0(4, 2) -> 10
, ++^#_0(4, 4) -> 10
, c_5_0(10) -> 10}
2) { rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, ++^#(x, ++(y, z)) -> c_6(++^#(++(x, y), z))
, ++^#(.(x, y), z) -> c_5(++^#(y, z))
, ++^#(nil(), y) -> c_3()}
The usable rules for this path are the following:
{ rev(nil()) -> nil()
, rev(rev(x)) -> x
, rev(++(x, y)) -> ++(rev(y), rev(x))
, ++(nil(), y) -> y
, ++(x, nil()) -> x
, ++(.(x, y), z) -> .(x, ++(y, z))
, ++(x, ++(y, z)) -> ++(++(x, y), z)}
We have applied the subprocessor on the union of usable rules and weak (innermost) dependency pairs.
'Weight Gap Principle'
----------------------
Answer: YES(?,O(n^1))
Input Problem: innermost runtime-complexity with respect to
Rules:
{ rev(nil()) -> nil()
, rev(rev(x)) -> x
, rev(++(x, y)) -> ++(rev(y), rev(x))
, ++(nil(), y) -> y
, ++(x, nil()) -> x
, ++(.(x, y), z) -> .(x, ++(y, z))
, ++(x, ++(y, z)) -> ++(++(x, y), z)
, ++^#(x, ++(y, z)) -> c_6(++^#(++(x, y), z))
, ++^#(.(x, y), z) -> c_5(++^#(y, z))
, rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, ++^#(nil(), y) -> c_3()}
Details:
We apply the weight gap principle, strictly orienting the rules
{ rev(nil()) -> nil()
, rev(rev(x)) -> x
, ++^#(nil(), y) -> c_3()}
and weakly orienting the rules
{}
using the following strongly linear interpretation:
Processor 'Matrix Interpretation' oriented the following rules strictly:
{ rev(nil()) -> nil()
, rev(rev(x)) -> x
, ++^#(nil(), y) -> c_3()}
Details:
Interpretation Functions:
rev(x1) = [1] x1 + [1]
nil() = [0]
++(x1, x2) = [1] x1 + [1] x2 + [0]
.(x1, x2) = [1] x1 + [1] x2 + [0]
make(x1) = [0] x1 + [0]
rev^#(x1) = [1] x1 + [1]
c_0() = [0]
c_1() = [0]
c_2(x1) = [1] x1 + [0]
++^#(x1, x2) = [1] x1 + [1] x2 + [1]
c_3() = [0]
c_4() = [0]
c_5(x1) = [1] x1 + [0]
c_6(x1) = [1] x1 + [0]
make^#(x1) = [0] x1 + [0]
c_7() = [0]
Finally we apply the subprocessor
We apply the weight gap principle, strictly orienting the rules
{rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))}
and weakly orienting the rules
{ rev(nil()) -> nil()
, rev(rev(x)) -> x
, ++^#(nil(), y) -> c_3()}
using the following strongly linear interpretation:
Processor 'Matrix Interpretation' oriented the following rules strictly:
{rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))}
Details:
Interpretation Functions:
rev(x1) = [1] x1 + [1]
nil() = [0]
++(x1, x2) = [1] x1 + [1] x2 + [0]
.(x1, x2) = [1] x1 + [1] x2 + [0]
make(x1) = [0] x1 + [0]
rev^#(x1) = [1] x1 + [9]
c_0() = [0]
c_1() = [0]
c_2(x1) = [1] x1 + [0]
++^#(x1, x2) = [1] x1 + [1] x2 + [1]
c_3() = [0]
c_4() = [0]
c_5(x1) = [1] x1 + [0]
c_6(x1) = [1] x1 + [0]
make^#(x1) = [0] x1 + [0]
c_7() = [0]
Finally we apply the subprocessor
We apply the weight gap principle, strictly orienting the rules
{ ++(nil(), y) -> y
, ++(x, nil()) -> x
, ++^#(.(x, y), z) -> c_5(++^#(y, z))}
and weakly orienting the rules
{ rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, rev(nil()) -> nil()
, rev(rev(x)) -> x
, ++^#(nil(), y) -> c_3()}
using the following strongly linear interpretation:
Processor 'Matrix Interpretation' oriented the following rules strictly:
{ ++(nil(), y) -> y
, ++(x, nil()) -> x
, ++^#(.(x, y), z) -> c_5(++^#(y, z))}
Details:
Interpretation Functions:
rev(x1) = [1] x1 + [1]
nil() = [2]
++(x1, x2) = [1] x1 + [1] x2 + [0]
.(x1, x2) = [1] x1 + [1] x2 + [15]
make(x1) = [0] x1 + [0]
rev^#(x1) = [1] x1 + [9]
c_0() = [0]
c_1() = [0]
c_2(x1) = [1] x1 + [2]
++^#(x1, x2) = [1] x1 + [1] x2 + [0]
c_3() = [0]
c_4() = [0]
c_5(x1) = [1] x1 + [0]
c_6(x1) = [1] x1 + [0]
make^#(x1) = [0] x1 + [0]
c_7() = [0]
Finally we apply the subprocessor
'fastest of 'combine', 'Bounds with default enrichment', 'Bounds with default enrichment''
------------------------------------------------------------------------------------------
Answer: YES(?,O(n^1))
Input Problem: innermost relative runtime-complexity with respect to
Strict Rules:
{ rev(++(x, y)) -> ++(rev(y), rev(x))
, ++(.(x, y), z) -> .(x, ++(y, z))
, ++(x, ++(y, z)) -> ++(++(x, y), z)
, ++^#(x, ++(y, z)) -> c_6(++^#(++(x, y), z))}
Weak Rules:
{ ++(nil(), y) -> y
, ++(x, nil()) -> x
, ++^#(.(x, y), z) -> c_5(++^#(y, z))
, rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, rev(nil()) -> nil()
, rev(rev(x)) -> x
, ++^#(nil(), y) -> c_3()}
Details:
The problem was solved by processor 'Bounds with default enrichment':
'Bounds with default enrichment'
--------------------------------
Answer: YES(?,O(n^1))
Input Problem: innermost relative runtime-complexity with respect to
Strict Rules:
{ rev(++(x, y)) -> ++(rev(y), rev(x))
, ++(.(x, y), z) -> .(x, ++(y, z))
, ++(x, ++(y, z)) -> ++(++(x, y), z)
, ++^#(x, ++(y, z)) -> c_6(++^#(++(x, y), z))}
Weak Rules:
{ ++(nil(), y) -> y
, ++(x, nil()) -> x
, ++^#(.(x, y), z) -> c_5(++^#(y, z))
, rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, rev(nil()) -> nil()
, rev(rev(x)) -> x
, ++^#(nil(), y) -> c_3()}
Details:
The problem is Match-bounded by 0.
The enriched problem is compatible with the following automaton:
{ nil_0() -> 2
, ._0(2, 2) -> 4
, ._0(2, 4) -> 4
, ._0(4, 2) -> 4
, ._0(4, 4) -> 4
, rev^#_0(2) -> 6
, rev^#_0(4) -> 6
, ++^#_0(2, 2) -> 10
, ++^#_0(2, 4) -> 10
, ++^#_0(4, 2) -> 10
, ++^#_0(4, 4) -> 10
, c_3_0() -> 10
, c_5_0(10) -> 10}
3) { rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, ++^#(x, ++(y, z)) -> c_6(++^#(++(x, y), z))
, ++^#(.(x, y), z) -> c_5(++^#(y, z))
, ++^#(x, nil()) -> c_4()}
The usable rules for this path are the following:
{ rev(nil()) -> nil()
, rev(rev(x)) -> x
, rev(++(x, y)) -> ++(rev(y), rev(x))
, ++(nil(), y) -> y
, ++(x, nil()) -> x
, ++(.(x, y), z) -> .(x, ++(y, z))
, ++(x, ++(y, z)) -> ++(++(x, y), z)}
We have applied the subprocessor on the union of usable rules and weak (innermost) dependency pairs.
'Weight Gap Principle'
----------------------
Answer: YES(?,O(n^1))
Input Problem: innermost runtime-complexity with respect to
Rules:
{ rev(nil()) -> nil()
, rev(rev(x)) -> x
, rev(++(x, y)) -> ++(rev(y), rev(x))
, ++(nil(), y) -> y
, ++(x, nil()) -> x
, ++(.(x, y), z) -> .(x, ++(y, z))
, ++(x, ++(y, z)) -> ++(++(x, y), z)
, ++^#(x, ++(y, z)) -> c_6(++^#(++(x, y), z))
, ++^#(.(x, y), z) -> c_5(++^#(y, z))
, rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, ++^#(x, nil()) -> c_4()}
Details:
We apply the weight gap principle, strictly orienting the rules
{ rev(nil()) -> nil()
, rev(rev(x)) -> x
, ++^#(x, nil()) -> c_4()}
and weakly orienting the rules
{}
using the following strongly linear interpretation:
Processor 'Matrix Interpretation' oriented the following rules strictly:
{ rev(nil()) -> nil()
, rev(rev(x)) -> x
, ++^#(x, nil()) -> c_4()}
Details:
Interpretation Functions:
rev(x1) = [1] x1 + [1]
nil() = [0]
++(x1, x2) = [1] x1 + [1] x2 + [0]
.(x1, x2) = [1] x1 + [1] x2 + [0]
make(x1) = [0] x1 + [0]
rev^#(x1) = [1] x1 + [1]
c_0() = [0]
c_1() = [0]
c_2(x1) = [1] x1 + [0]
++^#(x1, x2) = [1] x1 + [1] x2 + [1]
c_3() = [0]
c_4() = [0]
c_5(x1) = [1] x1 + [0]
c_6(x1) = [1] x1 + [0]
make^#(x1) = [0] x1 + [0]
c_7() = [0]
Finally we apply the subprocessor
We apply the weight gap principle, strictly orienting the rules
{rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))}
and weakly orienting the rules
{ rev(nil()) -> nil()
, rev(rev(x)) -> x
, ++^#(x, nil()) -> c_4()}
using the following strongly linear interpretation:
Processor 'Matrix Interpretation' oriented the following rules strictly:
{rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))}
Details:
Interpretation Functions:
rev(x1) = [1] x1 + [1]
nil() = [0]
++(x1, x2) = [1] x1 + [1] x2 + [0]
.(x1, x2) = [1] x1 + [1] x2 + [0]
make(x1) = [0] x1 + [0]
rev^#(x1) = [1] x1 + [9]
c_0() = [0]
c_1() = [0]
c_2(x1) = [1] x1 + [0]
++^#(x1, x2) = [1] x1 + [1] x2 + [1]
c_3() = [0]
c_4() = [0]
c_5(x1) = [1] x1 + [0]
c_6(x1) = [1] x1 + [0]
make^#(x1) = [0] x1 + [0]
c_7() = [0]
Finally we apply the subprocessor
We apply the weight gap principle, strictly orienting the rules
{ ++(nil(), y) -> y
, ++(x, nil()) -> x
, ++^#(.(x, y), z) -> c_5(++^#(y, z))}
and weakly orienting the rules
{ rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, rev(nil()) -> nil()
, rev(rev(x)) -> x
, ++^#(x, nil()) -> c_4()}
using the following strongly linear interpretation:
Processor 'Matrix Interpretation' oriented the following rules strictly:
{ ++(nil(), y) -> y
, ++(x, nil()) -> x
, ++^#(.(x, y), z) -> c_5(++^#(y, z))}
Details:
Interpretation Functions:
rev(x1) = [1] x1 + [1]
nil() = [2]
++(x1, x2) = [1] x1 + [1] x2 + [0]
.(x1, x2) = [1] x1 + [1] x2 + [15]
make(x1) = [0] x1 + [0]
rev^#(x1) = [1] x1 + [9]
c_0() = [0]
c_1() = [0]
c_2(x1) = [1] x1 + [2]
++^#(x1, x2) = [1] x1 + [1] x2 + [0]
c_3() = [0]
c_4() = [0]
c_5(x1) = [1] x1 + [0]
c_6(x1) = [1] x1 + [0]
make^#(x1) = [0] x1 + [0]
c_7() = [0]
Finally we apply the subprocessor
'fastest of 'combine', 'Bounds with default enrichment', 'Bounds with default enrichment''
------------------------------------------------------------------------------------------
Answer: YES(?,O(n^1))
Input Problem: innermost relative runtime-complexity with respect to
Strict Rules:
{ rev(++(x, y)) -> ++(rev(y), rev(x))
, ++(.(x, y), z) -> .(x, ++(y, z))
, ++(x, ++(y, z)) -> ++(++(x, y), z)
, ++^#(x, ++(y, z)) -> c_6(++^#(++(x, y), z))}
Weak Rules:
{ ++(nil(), y) -> y
, ++(x, nil()) -> x
, ++^#(.(x, y), z) -> c_5(++^#(y, z))
, rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, rev(nil()) -> nil()
, rev(rev(x)) -> x
, ++^#(x, nil()) -> c_4()}
Details:
The problem was solved by processor 'Bounds with default enrichment':
'Bounds with default enrichment'
--------------------------------
Answer: YES(?,O(n^1))
Input Problem: innermost relative runtime-complexity with respect to
Strict Rules:
{ rev(++(x, y)) -> ++(rev(y), rev(x))
, ++(.(x, y), z) -> .(x, ++(y, z))
, ++(x, ++(y, z)) -> ++(++(x, y), z)
, ++^#(x, ++(y, z)) -> c_6(++^#(++(x, y), z))}
Weak Rules:
{ ++(nil(), y) -> y
, ++(x, nil()) -> x
, ++^#(.(x, y), z) -> c_5(++^#(y, z))
, rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, rev(nil()) -> nil()
, rev(rev(x)) -> x
, ++^#(x, nil()) -> c_4()}
Details:
The problem is Match-bounded by 0.
The enriched problem is compatible with the following automaton:
{ nil_0() -> 2
, ._0(2, 2) -> 4
, ._0(2, 4) -> 4
, ._0(4, 2) -> 4
, ._0(4, 4) -> 4
, rev^#_0(2) -> 6
, rev^#_0(4) -> 6
, ++^#_0(2, 2) -> 10
, ++^#_0(2, 4) -> 10
, ++^#_0(4, 2) -> 10
, ++^#_0(4, 4) -> 10
, c_4_0() -> 10
, c_5_0(10) -> 10}
4) { rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, ++^#(x, nil()) -> c_4()}
The usable rules for this path are the following:
{ rev(nil()) -> nil()
, rev(rev(x)) -> x
, rev(++(x, y)) -> ++(rev(y), rev(x))
, ++(nil(), y) -> y
, ++(x, nil()) -> x
, ++(.(x, y), z) -> .(x, ++(y, z))
, ++(x, ++(y, z)) -> ++(++(x, y), z)}
We have applied the subprocessor on the union of usable rules and weak (innermost) dependency pairs.
'Weight Gap Principle'
----------------------
Answer: YES(?,O(n^1))
Input Problem: innermost runtime-complexity with respect to
Rules:
{ rev(nil()) -> nil()
, rev(rev(x)) -> x
, rev(++(x, y)) -> ++(rev(y), rev(x))
, ++(nil(), y) -> y
, ++(x, nil()) -> x
, ++(.(x, y), z) -> .(x, ++(y, z))
, ++(x, ++(y, z)) -> ++(++(x, y), z)
, rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, ++^#(x, nil()) -> c_4()}
Details:
We apply the weight gap principle, strictly orienting the rules
{ rev(nil()) -> nil()
, rev(rev(x)) -> x}
and weakly orienting the rules
{}
using the following strongly linear interpretation:
Processor 'Matrix Interpretation' oriented the following rules strictly:
{ rev(nil()) -> nil()
, rev(rev(x)) -> x}
Details:
Interpretation Functions:
rev(x1) = [1] x1 + [1]
nil() = [0]
++(x1, x2) = [1] x1 + [1] x2 + [0]
.(x1, x2) = [1] x1 + [1] x2 + [0]
make(x1) = [0] x1 + [0]
rev^#(x1) = [1] x1 + [1]
c_0() = [0]
c_1() = [0]
c_2(x1) = [1] x1 + [1]
++^#(x1, x2) = [1] x1 + [1] x2 + [0]
c_3() = [0]
c_4() = [0]
c_5(x1) = [0] x1 + [0]
c_6(x1) = [0] x1 + [0]
make^#(x1) = [0] x1 + [0]
c_7() = [0]
Finally we apply the subprocessor
We apply the weight gap principle, strictly orienting the rules
{++^#(x, nil()) -> c_4()}
and weakly orienting the rules
{ rev(nil()) -> nil()
, rev(rev(x)) -> x}
using the following strongly linear interpretation:
Processor 'Matrix Interpretation' oriented the following rules strictly:
{++^#(x, nil()) -> c_4()}
Details:
Interpretation Functions:
rev(x1) = [1] x1 + [1]
nil() = [0]
++(x1, x2) = [1] x1 + [1] x2 + [0]
.(x1, x2) = [1] x1 + [1] x2 + [0]
make(x1) = [0] x1 + [0]
rev^#(x1) = [1] x1 + [1]
c_0() = [0]
c_1() = [0]
c_2(x1) = [1] x1 + [2]
++^#(x1, x2) = [1] x1 + [1] x2 + [8]
c_3() = [0]
c_4() = [0]
c_5(x1) = [0] x1 + [0]
c_6(x1) = [0] x1 + [0]
make^#(x1) = [0] x1 + [0]
c_7() = [0]
Finally we apply the subprocessor
We apply the weight gap principle, strictly orienting the rules
{rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))}
and weakly orienting the rules
{ ++^#(x, nil()) -> c_4()
, rev(nil()) -> nil()
, rev(rev(x)) -> x}
using the following strongly linear interpretation:
Processor 'Matrix Interpretation' oriented the following rules strictly:
{rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))}
Details:
Interpretation Functions:
rev(x1) = [1] x1 + [1]
nil() = [0]
++(x1, x2) = [1] x1 + [1] x2 + [0]
.(x1, x2) = [1] x1 + [1] x2 + [0]
make(x1) = [0] x1 + [0]
rev^#(x1) = [1] x1 + [9]
c_0() = [0]
c_1() = [0]
c_2(x1) = [1] x1 + [1]
++^#(x1, x2) = [1] x1 + [1] x2 + [0]
c_3() = [0]
c_4() = [0]
c_5(x1) = [0] x1 + [0]
c_6(x1) = [0] x1 + [0]
make^#(x1) = [0] x1 + [0]
c_7() = [0]
Finally we apply the subprocessor
We apply the weight gap principle, strictly orienting the rules
{ ++(nil(), y) -> y
, ++(x, nil()) -> x}
and weakly orienting the rules
{ rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, ++^#(x, nil()) -> c_4()
, rev(nil()) -> nil()
, rev(rev(x)) -> x}
using the following strongly linear interpretation:
Processor 'Matrix Interpretation' oriented the following rules strictly:
{ ++(nil(), y) -> y
, ++(x, nil()) -> x}
Details:
Interpretation Functions:
rev(x1) = [1] x1 + [0]
nil() = [0]
++(x1, x2) = [1] x1 + [1] x2 + [2]
.(x1, x2) = [1] x1 + [1] x2 + [14]
make(x1) = [0] x1 + [0]
rev^#(x1) = [1] x1 + [1]
c_0() = [0]
c_1() = [0]
c_2(x1) = [1] x1 + [1]
++^#(x1, x2) = [1] x1 + [1] x2 + [0]
c_3() = [0]
c_4() = [0]
c_5(x1) = [0] x1 + [0]
c_6(x1) = [0] x1 + [0]
make^#(x1) = [0] x1 + [0]
c_7() = [0]
Finally we apply the subprocessor
'fastest of 'combine', 'Bounds with default enrichment', 'Bounds with default enrichment''
------------------------------------------------------------------------------------------
Answer: YES(?,O(n^1))
Input Problem: innermost relative runtime-complexity with respect to
Strict Rules:
{ rev(++(x, y)) -> ++(rev(y), rev(x))
, ++(.(x, y), z) -> .(x, ++(y, z))
, ++(x, ++(y, z)) -> ++(++(x, y), z)}
Weak Rules:
{ ++(nil(), y) -> y
, ++(x, nil()) -> x
, rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, ++^#(x, nil()) -> c_4()
, rev(nil()) -> nil()
, rev(rev(x)) -> x}
Details:
The problem was solved by processor 'Bounds with default enrichment':
'Bounds with default enrichment'
--------------------------------
Answer: YES(?,O(n^1))
Input Problem: innermost relative runtime-complexity with respect to
Strict Rules:
{ rev(++(x, y)) -> ++(rev(y), rev(x))
, ++(.(x, y), z) -> .(x, ++(y, z))
, ++(x, ++(y, z)) -> ++(++(x, y), z)}
Weak Rules:
{ ++(nil(), y) -> y
, ++(x, nil()) -> x
, rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, ++^#(x, nil()) -> c_4()
, rev(nil()) -> nil()
, rev(rev(x)) -> x}
Details:
The problem is Match-bounded by 0.
The enriched problem is compatible with the following automaton:
{ nil_0() -> 2
, ._0(2, 2) -> 4
, ._0(2, 4) -> 4
, ._0(4, 2) -> 4
, ._0(4, 4) -> 4
, rev^#_0(2) -> 6
, rev^#_0(4) -> 6
, ++^#_0(2, 2) -> 10
, ++^#_0(2, 4) -> 10
, ++^#_0(4, 2) -> 10
, ++^#_0(4, 4) -> 10
, c_4_0() -> 10}
5) { rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, ++^#(nil(), y) -> c_3()}
The usable rules for this path are the following:
{ rev(nil()) -> nil()
, rev(rev(x)) -> x
, rev(++(x, y)) -> ++(rev(y), rev(x))
, ++(nil(), y) -> y
, ++(x, nil()) -> x
, ++(.(x, y), z) -> .(x, ++(y, z))
, ++(x, ++(y, z)) -> ++(++(x, y), z)}
We have applied the subprocessor on the union of usable rules and weak (innermost) dependency pairs.
'Weight Gap Principle'
----------------------
Answer: YES(?,O(n^1))
Input Problem: innermost runtime-complexity with respect to
Rules:
{ rev(nil()) -> nil()
, rev(rev(x)) -> x
, rev(++(x, y)) -> ++(rev(y), rev(x))
, ++(nil(), y) -> y
, ++(x, nil()) -> x
, ++(.(x, y), z) -> .(x, ++(y, z))
, ++(x, ++(y, z)) -> ++(++(x, y), z)
, rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, ++^#(nil(), y) -> c_3()}
Details:
We apply the weight gap principle, strictly orienting the rules
{ rev(nil()) -> nil()
, rev(rev(x)) -> x}
and weakly orienting the rules
{}
using the following strongly linear interpretation:
Processor 'Matrix Interpretation' oriented the following rules strictly:
{ rev(nil()) -> nil()
, rev(rev(x)) -> x}
Details:
Interpretation Functions:
rev(x1) = [1] x1 + [1]
nil() = [0]
++(x1, x2) = [1] x1 + [1] x2 + [0]
.(x1, x2) = [1] x1 + [1] x2 + [0]
make(x1) = [0] x1 + [0]
rev^#(x1) = [1] x1 + [1]
c_0() = [0]
c_1() = [0]
c_2(x1) = [1] x1 + [1]
++^#(x1, x2) = [1] x1 + [1] x2 + [0]
c_3() = [0]
c_4() = [0]
c_5(x1) = [0] x1 + [0]
c_6(x1) = [0] x1 + [0]
make^#(x1) = [0] x1 + [0]
c_7() = [0]
Finally we apply the subprocessor
We apply the weight gap principle, strictly orienting the rules
{++^#(nil(), y) -> c_3()}
and weakly orienting the rules
{ rev(nil()) -> nil()
, rev(rev(x)) -> x}
using the following strongly linear interpretation:
Processor 'Matrix Interpretation' oriented the following rules strictly:
{++^#(nil(), y) -> c_3()}
Details:
Interpretation Functions:
rev(x1) = [1] x1 + [1]
nil() = [0]
++(x1, x2) = [1] x1 + [1] x2 + [0]
.(x1, x2) = [1] x1 + [1] x2 + [0]
make(x1) = [0] x1 + [0]
rev^#(x1) = [1] x1 + [1]
c_0() = [0]
c_1() = [0]
c_2(x1) = [1] x1 + [2]
++^#(x1, x2) = [1] x1 + [1] x2 + [8]
c_3() = [0]
c_4() = [0]
c_5(x1) = [0] x1 + [0]
c_6(x1) = [0] x1 + [0]
make^#(x1) = [0] x1 + [0]
c_7() = [0]
Finally we apply the subprocessor
We apply the weight gap principle, strictly orienting the rules
{rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))}
and weakly orienting the rules
{ ++^#(nil(), y) -> c_3()
, rev(nil()) -> nil()
, rev(rev(x)) -> x}
using the following strongly linear interpretation:
Processor 'Matrix Interpretation' oriented the following rules strictly:
{rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))}
Details:
Interpretation Functions:
rev(x1) = [1] x1 + [1]
nil() = [0]
++(x1, x2) = [1] x1 + [1] x2 + [0]
.(x1, x2) = [1] x1 + [1] x2 + [0]
make(x1) = [0] x1 + [0]
rev^#(x1) = [1] x1 + [9]
c_0() = [0]
c_1() = [0]
c_2(x1) = [1] x1 + [1]
++^#(x1, x2) = [1] x1 + [1] x2 + [0]
c_3() = [0]
c_4() = [0]
c_5(x1) = [0] x1 + [0]
c_6(x1) = [0] x1 + [0]
make^#(x1) = [0] x1 + [0]
c_7() = [0]
Finally we apply the subprocessor
We apply the weight gap principle, strictly orienting the rules
{ ++(nil(), y) -> y
, ++(x, nil()) -> x}
and weakly orienting the rules
{ rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, ++^#(nil(), y) -> c_3()
, rev(nil()) -> nil()
, rev(rev(x)) -> x}
using the following strongly linear interpretation:
Processor 'Matrix Interpretation' oriented the following rules strictly:
{ ++(nil(), y) -> y
, ++(x, nil()) -> x}
Details:
Interpretation Functions:
rev(x1) = [1] x1 + [0]
nil() = [0]
++(x1, x2) = [1] x1 + [1] x2 + [2]
.(x1, x2) = [1] x1 + [1] x2 + [14]
make(x1) = [0] x1 + [0]
rev^#(x1) = [1] x1 + [1]
c_0() = [0]
c_1() = [0]
c_2(x1) = [1] x1 + [1]
++^#(x1, x2) = [1] x1 + [1] x2 + [0]
c_3() = [0]
c_4() = [0]
c_5(x1) = [0] x1 + [0]
c_6(x1) = [0] x1 + [0]
make^#(x1) = [0] x1 + [0]
c_7() = [0]
Finally we apply the subprocessor
'fastest of 'combine', 'Bounds with default enrichment', 'Bounds with default enrichment''
------------------------------------------------------------------------------------------
Answer: YES(?,O(n^1))
Input Problem: innermost relative runtime-complexity with respect to
Strict Rules:
{ rev(++(x, y)) -> ++(rev(y), rev(x))
, ++(.(x, y), z) -> .(x, ++(y, z))
, ++(x, ++(y, z)) -> ++(++(x, y), z)}
Weak Rules:
{ ++(nil(), y) -> y
, ++(x, nil()) -> x
, rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, ++^#(nil(), y) -> c_3()
, rev(nil()) -> nil()
, rev(rev(x)) -> x}
Details:
The problem was solved by processor 'Bounds with default enrichment':
'Bounds with default enrichment'
--------------------------------
Answer: YES(?,O(n^1))
Input Problem: innermost relative runtime-complexity with respect to
Strict Rules:
{ rev(++(x, y)) -> ++(rev(y), rev(x))
, ++(.(x, y), z) -> .(x, ++(y, z))
, ++(x, ++(y, z)) -> ++(++(x, y), z)}
Weak Rules:
{ ++(nil(), y) -> y
, ++(x, nil()) -> x
, rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, ++^#(nil(), y) -> c_3()
, rev(nil()) -> nil()
, rev(rev(x)) -> x}
Details:
The problem is Match-bounded by 0.
The enriched problem is compatible with the following automaton:
{ nil_0() -> 2
, ._0(2, 2) -> 4
, ._0(2, 4) -> 4
, ._0(4, 2) -> 4
, ._0(4, 4) -> 4
, rev^#_0(2) -> 6
, rev^#_0(4) -> 6
, ++^#_0(2, 2) -> 10
, ++^#_0(2, 4) -> 10
, ++^#_0(4, 2) -> 10
, ++^#_0(4, 4) -> 10
, c_3_0() -> 10}
6) {rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))}
The usable rules for this path are the following:
{ rev(nil()) -> nil()
, rev(rev(x)) -> x
, rev(++(x, y)) -> ++(rev(y), rev(x))
, ++(nil(), y) -> y
, ++(x, nil()) -> x
, ++(.(x, y), z) -> .(x, ++(y, z))
, ++(x, ++(y, z)) -> ++(++(x, y), z)}
We have applied the subprocessor on the union of usable rules and weak (innermost) dependency pairs.
'Weight Gap Principle'
----------------------
Answer: YES(?,O(n^1))
Input Problem: innermost runtime-complexity with respect to
Rules:
{ rev(nil()) -> nil()
, rev(rev(x)) -> x
, rev(++(x, y)) -> ++(rev(y), rev(x))
, ++(nil(), y) -> y
, ++(x, nil()) -> x
, ++(.(x, y), z) -> .(x, ++(y, z))
, ++(x, ++(y, z)) -> ++(++(x, y), z)
, rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))}
Details:
We apply the weight gap principle, strictly orienting the rules
{ rev(nil()) -> nil()
, rev(rev(x)) -> x}
and weakly orienting the rules
{}
using the following strongly linear interpretation:
Processor 'Matrix Interpretation' oriented the following rules strictly:
{ rev(nil()) -> nil()
, rev(rev(x)) -> x}
Details:
Interpretation Functions:
rev(x1) = [1] x1 + [1]
nil() = [0]
++(x1, x2) = [1] x1 + [1] x2 + [0]
.(x1, x2) = [1] x1 + [1] x2 + [0]
make(x1) = [0] x1 + [0]
rev^#(x1) = [1] x1 + [1]
c_0() = [0]
c_1() = [0]
c_2(x1) = [1] x1 + [1]
++^#(x1, x2) = [1] x1 + [1] x2 + [0]
c_3() = [0]
c_4() = [0]
c_5(x1) = [0] x1 + [0]
c_6(x1) = [0] x1 + [0]
make^#(x1) = [0] x1 + [0]
c_7() = [0]
Finally we apply the subprocessor
We apply the weight gap principle, strictly orienting the rules
{rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))}
and weakly orienting the rules
{ rev(nil()) -> nil()
, rev(rev(x)) -> x}
using the following strongly linear interpretation:
Processor 'Matrix Interpretation' oriented the following rules strictly:
{rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))}
Details:
Interpretation Functions:
rev(x1) = [1] x1 + [1]
nil() = [0]
++(x1, x2) = [1] x1 + [1] x2 + [0]
.(x1, x2) = [1] x1 + [1] x2 + [0]
make(x1) = [0] x1 + [0]
rev^#(x1) = [1] x1 + [3]
c_0() = [0]
c_1() = [0]
c_2(x1) = [1] x1 + [0]
++^#(x1, x2) = [1] x1 + [1] x2 + [0]
c_3() = [0]
c_4() = [0]
c_5(x1) = [0] x1 + [0]
c_6(x1) = [0] x1 + [0]
make^#(x1) = [0] x1 + [0]
c_7() = [0]
Finally we apply the subprocessor
We apply the weight gap principle, strictly orienting the rules
{ ++(nil(), y) -> y
, ++(x, nil()) -> x}
and weakly orienting the rules
{ rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, rev(nil()) -> nil()
, rev(rev(x)) -> x}
using the following strongly linear interpretation:
Processor 'Matrix Interpretation' oriented the following rules strictly:
{ ++(nil(), y) -> y
, ++(x, nil()) -> x}
Details:
Interpretation Functions:
rev(x1) = [1] x1 + [1]
nil() = [4]
++(x1, x2) = [1] x1 + [1] x2 + [0]
.(x1, x2) = [1] x1 + [1] x2 + [0]
make(x1) = [0] x1 + [0]
rev^#(x1) = [1] x1 + [5]
c_0() = [0]
c_1() = [0]
c_2(x1) = [1] x1 + [3]
++^#(x1, x2) = [1] x1 + [1] x2 + [0]
c_3() = [0]
c_4() = [0]
c_5(x1) = [0] x1 + [0]
c_6(x1) = [0] x1 + [0]
make^#(x1) = [0] x1 + [0]
c_7() = [0]
Finally we apply the subprocessor
'fastest of 'combine', 'Bounds with default enrichment', 'Bounds with default enrichment''
------------------------------------------------------------------------------------------
Answer: YES(?,O(n^1))
Input Problem: innermost relative runtime-complexity with respect to
Strict Rules:
{ rev(++(x, y)) -> ++(rev(y), rev(x))
, ++(.(x, y), z) -> .(x, ++(y, z))
, ++(x, ++(y, z)) -> ++(++(x, y), z)}
Weak Rules:
{ ++(nil(), y) -> y
, ++(x, nil()) -> x
, rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, rev(nil()) -> nil()
, rev(rev(x)) -> x}
Details:
The problem was solved by processor 'Bounds with default enrichment':
'Bounds with default enrichment'
--------------------------------
Answer: YES(?,O(n^1))
Input Problem: innermost relative runtime-complexity with respect to
Strict Rules:
{ rev(++(x, y)) -> ++(rev(y), rev(x))
, ++(.(x, y), z) -> .(x, ++(y, z))
, ++(x, ++(y, z)) -> ++(++(x, y), z)}
Weak Rules:
{ ++(nil(), y) -> y
, ++(x, nil()) -> x
, rev^#(++(x, y)) -> c_2(++^#(rev(y), rev(x)))
, rev(nil()) -> nil()
, rev(rev(x)) -> x}
Details:
The problem is Match-bounded by 0.
The enriched problem is compatible with the following automaton:
{ nil_0() -> 2
, ._0(2, 2) -> 4
, ._0(2, 4) -> 4
, ._0(4, 2) -> 4
, ._0(4, 4) -> 4
, rev^#_0(2) -> 6
, rev^#_0(4) -> 6
, ++^#_0(2, 2) -> 10
, ++^#_0(2, 4) -> 10
, ++^#_0(4, 2) -> 10
, ++^#_0(4, 4) -> 10}
7) {rev^#(nil()) -> c_0()}
The usable rules for this path are empty.
We have oriented the usable rules with the following strongly linear interpretation:
Interpretation Functions:
rev(x1) = [0] x1 + [0]
nil() = [0]
++(x1, x2) = [0] x1 + [0] x2 + [0]
.(x1, x2) = [0] x1 + [0] x2 + [0]
make(x1) = [0] x1 + [0]
rev^#(x1) = [0] x1 + [0]
c_0() = [0]
c_1() = [0]
c_2(x1) = [0] x1 + [0]
++^#(x1, x2) = [0] x1 + [0] x2 + [0]
c_3() = [0]
c_4() = [0]
c_5(x1) = [0] x1 + [0]
c_6(x1) = [0] x1 + [0]
make^#(x1) = [0] x1 + [0]
c_7() = [0]
We have applied the subprocessor on the resulting DP-problem:
'Weight Gap Principle'
----------------------
Answer: YES(?,O(n^1))
Input Problem: innermost DP runtime-complexity with respect to
Strict Rules: {rev^#(nil()) -> c_0()}
Weak Rules: {}
Details:
We apply the weight gap principle, strictly orienting the rules
{rev^#(nil()) -> c_0()}
and weakly orienting the rules
{}
using the following strongly linear interpretation:
Processor 'Matrix Interpretation' oriented the following rules strictly:
{rev^#(nil()) -> c_0()}
Details:
Interpretation Functions:
rev(x1) = [0] x1 + [0]
nil() = [0]
++(x1, x2) = [0] x1 + [0] x2 + [0]
.(x1, x2) = [0] x1 + [0] x2 + [0]
make(x1) = [0] x1 + [0]
rev^#(x1) = [1] x1 + [1]
c_0() = [0]
c_1() = [0]
c_2(x1) = [0] x1 + [0]
++^#(x1, x2) = [0] x1 + [0] x2 + [0]
c_3() = [0]
c_4() = [0]
c_5(x1) = [0] x1 + [0]
c_6(x1) = [0] x1 + [0]
make^#(x1) = [0] x1 + [0]
c_7() = [0]
Finally we apply the subprocessor
'Empty TRS'
-----------
Answer: YES(?,O(1))
Input Problem: innermost DP runtime-complexity with respect to
Strict Rules: {}
Weak Rules: {rev^#(nil()) -> c_0()}
Details:
The given problem does not contain any strict rules
8) {rev^#(rev(x)) -> c_1()}
The usable rules for this path are empty.
We have oriented the usable rules with the following strongly linear interpretation:
Interpretation Functions:
rev(x1) = [0] x1 + [0]
nil() = [0]
++(x1, x2) = [0] x1 + [0] x2 + [0]
.(x1, x2) = [0] x1 + [0] x2 + [0]
make(x1) = [0] x1 + [0]
rev^#(x1) = [0] x1 + [0]
c_0() = [0]
c_1() = [0]
c_2(x1) = [0] x1 + [0]
++^#(x1, x2) = [0] x1 + [0] x2 + [0]
c_3() = [0]
c_4() = [0]
c_5(x1) = [0] x1 + [0]
c_6(x1) = [0] x1 + [0]
make^#(x1) = [0] x1 + [0]
c_7() = [0]
We have applied the subprocessor on the resulting DP-problem:
'Weight Gap Principle'
----------------------
Answer: YES(?,O(n^1))
Input Problem: innermost DP runtime-complexity with respect to
Strict Rules: {rev^#(rev(x)) -> c_1()}
Weak Rules: {}
Details:
We apply the weight gap principle, strictly orienting the rules
{rev^#(rev(x)) -> c_1()}
and weakly orienting the rules
{}
using the following strongly linear interpretation:
Processor 'Matrix Interpretation' oriented the following rules strictly:
{rev^#(rev(x)) -> c_1()}
Details:
Interpretation Functions:
rev(x1) = [1] x1 + [0]
nil() = [0]
++(x1, x2) = [0] x1 + [0] x2 + [0]
.(x1, x2) = [0] x1 + [0] x2 + [0]
make(x1) = [0] x1 + [0]
rev^#(x1) = [1] x1 + [1]
c_0() = [0]
c_1() = [0]
c_2(x1) = [0] x1 + [0]
++^#(x1, x2) = [0] x1 + [0] x2 + [0]
c_3() = [0]
c_4() = [0]
c_5(x1) = [0] x1 + [0]
c_6(x1) = [0] x1 + [0]
make^#(x1) = [0] x1 + [0]
c_7() = [0]
Finally we apply the subprocessor
'Empty TRS'
-----------
Answer: YES(?,O(1))
Input Problem: innermost DP runtime-complexity with respect to
Strict Rules: {}
Weak Rules: {rev^#(rev(x)) -> c_1()}
Details:
The given problem does not contain any strict rules
9) {make^#(x) -> c_7()}
The usable rules for this path are empty.
We have oriented the usable rules with the following strongly linear interpretation:
Interpretation Functions:
rev(x1) = [0] x1 + [0]
nil() = [0]
++(x1, x2) = [0] x1 + [0] x2 + [0]
.(x1, x2) = [0] x1 + [0] x2 + [0]
make(x1) = [0] x1 + [0]
rev^#(x1) = [0] x1 + [0]
c_0() = [0]
c_1() = [0]
c_2(x1) = [0] x1 + [0]
++^#(x1, x2) = [0] x1 + [0] x2 + [0]
c_3() = [0]
c_4() = [0]
c_5(x1) = [0] x1 + [0]
c_6(x1) = [0] x1 + [0]
make^#(x1) = [0] x1 + [0]
c_7() = [0]
We have applied the subprocessor on the resulting DP-problem:
'Weight Gap Principle'
----------------------
Answer: YES(?,O(n^1))
Input Problem: innermost DP runtime-complexity with respect to
Strict Rules: {make^#(x) -> c_7()}
Weak Rules: {}
Details:
We apply the weight gap principle, strictly orienting the rules
{make^#(x) -> c_7()}
and weakly orienting the rules
{}
using the following strongly linear interpretation:
Processor 'Matrix Interpretation' oriented the following rules strictly:
{make^#(x) -> c_7()}
Details:
Interpretation Functions:
rev(x1) = [0] x1 + [0]
nil() = [0]
++(x1, x2) = [0] x1 + [0] x2 + [0]
.(x1, x2) = [0] x1 + [0] x2 + [0]
make(x1) = [0] x1 + [0]
rev^#(x1) = [0] x1 + [0]
c_0() = [0]
c_1() = [0]
c_2(x1) = [0] x1 + [0]
++^#(x1, x2) = [0] x1 + [0] x2 + [0]
c_3() = [0]
c_4() = [0]
c_5(x1) = [0] x1 + [0]
c_6(x1) = [0] x1 + [0]
make^#(x1) = [1] x1 + [4]
c_7() = [0]
Finally we apply the subprocessor
'Empty TRS'
-----------
Answer: YES(?,O(1))
Input Problem: innermost DP runtime-complexity with respect to
Strict Rules: {}
Weak Rules: {make^#(x) -> c_7()}
Details:
The given problem does not contain any strict rules